package com.maiji.cloud.service;

import java.util.Date;
import java.util.List;
import com.maiji.cloud.entities.login.ShareWeightHelpRule;
import com.maiji.cloud.entities.login.ShareWeightRuleEntity;
import com.maiji.cloud.request.BaseDataReqDto;
import com.maiji.cloud.request.login.ReduceWeightFundLogReqData;
import com.maiji.cloud.response.BaseDataResDto;
import com.maiji.cloud.response.BaseResDto;
import com.maiji.cloud.response.login.ReduceWeightFundLogResData;
import com.maiji.cloud.response.login.ShareWeightDetailsData;
import com.maiji.cloud.response.login.ShareWeightUserHelpList;

public interface ShareWeightService {

	/**
	 *设置获取基础减肥基金的规则
	 * @return
	 */
	public BaseResDto addShareWeightRuleInfo(BaseDataReqDto<ShareWeightRuleEntity> param);
	
	public ShareWeightRuleEntity getShareWeightRuleEntityInfo();

	/**
	 * 分享出去的体重微信用户助力
	 * @param param
	 * @param maijiToken
	 * @return
	 */
	public BaseDataResDto<Boolean> shareWeightUserHelp(BaseDataReqDto<String> param, String maijiToken);
	
	/**
	 * 体重分享之后点击查看详情
	 * @param param
	 * @return
	 */
	public BaseDataResDto<ShareWeightDetailsData> getShareWeightDetails(BaseDataReqDto<String> param,String maijiToken);

	/**
	 * 
	 * @param param
	 * @return
	 */
	public BaseDataResDto<List<ShareWeightUserHelpList>> getShareWeightUserHelpList(BaseDataReqDto<String> param);

	/**
	 * 获得减肥基金明细
	 * @param param
	 * @param maijiToken
	 * @return
	 */
	public BaseDataResDto<List<ReduceWeightFundLogResData>> getReduceWeightFundLogList(
			BaseDataReqDto<ReduceWeightFundLogReqData> param, String maijiToken);

    BaseDataResDto<ShareWeightHelpRule> findShareWeightHelpRule();

    BaseResDto updShareWeightHelpRule(ShareWeightHelpRule shareWeightHelpRule);

    BaseDataResDto<List<ShareWeightHelpRule>> findAllShareWeightHelpRuleLogs(List<Date> updateDates);
}
